<?php

abstract class Reale_Model_Estate_Generic
{
	/**
	 * 
	 * Stores estate identification number
	 * @var string|int
	 */
	protected $_estate_id;
	
	/**
	 * 
	 * Stores estate Type
	 * @var string|int
	 */
	protected $_estate_type;
	
	/**
	 * 
	 * Stores estate Owner/Builder Name
	 * @var string
	 */
	protected $_name;
	
	
	/**
	 * 
	 * Stores estate Owner/Builder Email address
	 * @var string
	 */
	protected $_email;

	
	/**
	 * Stores Estate Owner/Builder Contact
	 * @var string
	 */
	protected $_contact;
	
	
	/**
	 * 
	 * Stores estate's state
	 * @var string
	 */
	protected $_state;
	
	/**
	 * 
	 * Stores estate's district
	 * @var string
	 */
	protected $_district;
	
	/**
	 * 
	 * Stores estate's city
	 * @var string
	 */
	protected $_city;
	
	/**
	 * 
	 * Stores estate's location
	 * @var string
	 */
	protected $_location;
	
	
	/**
	 * Number of times the estate has been viewed
	 * @var int
	 */
	protected $_view_count;
	
	/**
	 * 
	 * Stores estate summary
	 * @var string
	 */
	protected $_summary;

	
	/**
	 * check if project/property is featured by company.
	 * @var bool
	 */
	protected $_is_featured;
	
	/**
	 * 
	 * Getter function for data member estate_id
	 * @return int $_estate_id
	 */
	public function getEstate_id() {
		if(isset($this->_estate_id)){
			return $this->_estate_id;	
		}
		//throw new Exception('The objects primary key(i.e. $_estate_id) is not set.',Zend_Log::ERR); 
	}
	
	/**
	 * 
	 * Setter function for data member estate_id 
	 * @param string|int estate_id
	 */
	public function setEstate_id($estate_id) {
		$this->_estate_id = $estate_id;
		return $this;
	}
	
	/**
	 * 
	 * Getter function for data member estate_type
	 * @return string $_estate_type
	 */
	public function getEstate_Type() {
		if(isset($this->_estate_type)){
			return $this->_estate_type;	
		}
		//throw new Exception('The objects primary key(i.e. $_estate_type) is not set.',Zend_Log::ERR); 
	}

	/**
	 * 
	 * Setter function for data member estate_type 
	 * @param string|int estate_type
	 */
	public function setEstate_Type($estate_type) {
		$this->_estate_type = $estate_type;
		return $this;
	}

	/**
     * @return string $_name
     */
    public function getName ()
    {
        return $this->_name;
    }
	
	/**
     * @param string $_name
     */
    public function setName ($_name)
    {
        $this->_name = $_name;
    }
    
	/**
     * @return the $_email
     */
    public function getEmail ()
    {
        return $this->_email;
    }

	/**
     * @param string $_email
     */
    public function setEmail ($_email)
    {
        $this->_email = $_email;
    }

	/**
     * @return the $_contact
     */
    public function getContact ()
    {
        return $this->_contact;
    }

	/**
     * @param string $_contact
     */
    public function setContact ($_contact)
    {
        $this->_contact = $_contact;
    }
	
	/**
	 * 
	 * Getter function for data member state
	 * @return string $_state
	 */
	public function getState() {
		if(isset($this->_state)){
		return $this->_state;	
		}
		return null; 
	}

	/**
	 * 
	 * Setter function for data member state 
	 * @param string state
	 */
	public function setState($state) {
		$this->_state = $state;
		return $this;
	}
	
	/**
	 * 
	 * Getter function for data member district
	 * @return string $_district
	 */
	public function getDistrict() {
		if(isset($this->_district)){
		return $this->_district;	
		}
		return null;  
	}

	/**
	 * 
	 * Setter function for data member district 
	 * @param string district
	 */
	public function setDistrict($district) {
		$this->_district = $district;
		return $this;
	}
	
	/**
	 * 
	 * Getter function for data member city
	 * @return string $_city
	 */
	public function getCity() {
		if(isset($this->_city)){
		return $this->_city;	
		}
		return null;  
	}

	/**
	 * 
	 * Setter function for data member city 
	 * @param string city
	 */
	public function setCity($city) {
		$this->_city = $city;
		return $this;
	}
	
	/**
	 * 
	 * Getter function for data member location
	 * @return string $_location
	 */
	public function getLocation() {
		if(isset($this->_location)){
		return $this->_location;	
		}
		return null;
	}
	
	/**
	 * 
	 * Setter function for data member location 
	 * @param string location
	 */
	public function setLocation($location) {
		$this->_location = $location;
		return $this;
	}
	
	/**
     * @return the $_view_count
     */
    public function getView_count ()
    {
        return $this->_view_count;
    }

	/**
     * @param int $_view_count
     */
    public function setView_count ($_view_count)
    {
        $this->_view_count = $_view_count;
    }
	
	/**
	 * 
	 * Getter function for data member summary
	 * @return string $_summary
	 */
	public function getSummary() {
		if(isset($this->_summary)){
		return $this->_summary;	
		}
		return null;
	}

	/**
	 * 
	 * Setter function for data member summary 
	 * @param string summary
	 */
	public function setSummary($summary) {
		$this->_summary = $summary;
		return $this;
	}
	
	/**
     * @return the $_is_featured
     */
    public function getIs_featured ()
    {
        return $this->_is_featured;
    }

	/**
     * @param bool $_is_featured
     */
    public function setIs_featured ($_is_featured)
    {
        $this->_is_featured = $_is_featured;
    }
    
}